Django + uwsgi + nginx + Supervisor 安装笔记(出错)
Django + uwsgi + nginx + Supervisor 安装笔记(出错)
安装过程 (不说了,网上找)
Django
uwsgi
nginx
Supervisor http://blog.cheyo.net/1.html //python3 https://blog.csdn.net/charlie_heng/article/details/60573688
出现的问题
1.linux下如何查找nginx配置文件的位置,方法如下:
先找出nginx可执行文件的路径
1 | `ps -ef | grep nginx` |
2.启动uwsgi.ini
这一步我被坑死了 网上说的是直接在script目录下uwsgi –ini uwsgi.ini 但是这样真的不对,需要找到uswgi所在的目录运行,我的是/usr/bin/uwsgi -- uwsgi.ini
but 我的一直出错,不运行,好久才发现是有两个uwsgi
我用的这个/home/hitwh/.local/bin/uwsgi --ini uwsgi.ini
3.nginx的配置文件
不知道为啥,我的配置文件跟网上说的不一样,我的在**/etc/nginx/sites-available**
的 default文件
/etc/nginx/sites-available$ sudo gedit default
nginx 操作命令
1 | 打开配置文件default,路径/etc/nginx/sites-available/default |
4.Django的测试运行
python manage.py runserver
收集静态文件(别忘了修改setting)
python manage.py collectstatic
5.如果不能正常显示页面,请检查防火墙状态,
保证8000端口是能够被访问的
检查防火墙状态
1 | sudo ufw status |
可以临时关闭防火墙
1 | sudo ufw disable |
或者保持防火墙开启,允许8000端口连接
1 | sudo ufw allow 8000 |
6.每次修改了Django项目中的模板/视图/URL/配置
文件,都需要重启uwsgi
服务。
1 | killall -9 uwsgi |
7.改变运行nginx的用户身份
没有权限,我就给你权限
把/etc/nginx/nginx.conf
第一行的user www-data;
中的www-data
改成权限足够高的用户,重启nginx
8.可能用到虚拟环境,Supervisor需要python2
1 | virtualenv --distribute -p /usr/bin/python2 super //安装的目录 |
9.启动Supervisor:
1 | supervisord -c /etc/supervisor/supervisord.conf |
停止Supervisor(子进程也会被停止)
1 | supervisorctl shutdown |
查看Supervisor是否已经启动:
1 | [root@aaa blog.cheyo.net]# ps -ef | grep supervisor | grep -v grep |
查看业务进程是否已经被拉起:
1 | [root@aaa blog.cheyo.net]# supervisorctl status |
Ursprünglicher Autor: Bean
Ursprünglicher Link: http://yoursite.com/2019/10/18/Django + uwsgi + nginx + Supervisor 安装笔记(出错)/
Copyright-Erklärung: Bitte geben Sie die Quelle des Nachdrucks an.